package com.zdy.state;

/**
 * Created by 逸足天涯
 * on 3/9/2020.
 */
//观察测试线程的状态
public class TestState {
    public static void main(String[] args) throws InterruptedException{
            Thread thread = new Thread(()->{
            for (int i = 0; i < 5 ; i++) {
                try {
                    Thread.sleep(1000);
                }catch (InterruptedException e){
                    e.printStackTrace();
                }
                System.out.println("///////");

            }
        });
            //观察状态
        Thread.State state = thread.getState();
        System.out.println(state);//new

        //观察启动后
        thread.start();
        state = thread.getState();
        System.out.println(state);//run


        while(state != Thread.State.WAITING){//只要线程不终止，就一直输出状态
            Thread.sleep(100);
            state = thread.getState();//更新状态
            System.out.println(state);//输出状态
        }
        //死亡状态不能再启动，线程只能启动一次
        thread.start();
    }
}
